<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2015/10/19
 * Time: 14:09
 *
 * 后台 系统 基类
 */
namespace Admin\Controller;
use Think\Controller;

class AdminController extends Controller{

    /**
     * 构造函数
     */
    public function __construct(){
        parent::__construct();

        //验证 用户 是否登录 USER_ADMIN_LOGIN
        if(!session('USER_ADMIN_LOGIN.id')){
            exit($this->error('你还没有登录，请登录系统。',U('Public/login')));
        }
        //用户权限 验证
        $Auth = new \Think\Auth();
        $module_name = CONTROLLER_NAME.'/'.ACTION_NAME;

        if(session('USER_ADMIN_LOGIN.id')==C('ADMIN_AUTH_KEY')){
        //以用户名来判断是否是超级管理员，绕过验证，不用用户组来判断的原因是用户组有时候是中文，而且常删除或更改。
            return true;
        }
        if(!$Auth->check($module_name,$_SESSION[C('USER_AUTH_KEY')])){
            $this->error('没有权限');
        }
        //保存 用户基本权限
        $this->accessUserAuthority();
        //
    }


    /**
     * 获取 用户的 权限
     * 1、获取 用户的角色
     * 2、根据角色 ，获取用户的所有权限
     */
    private function accessUserAuthority(){
        $role_id = session('USER_ADMIN_LOGIN.role_id');
    }


    /**
     * 空 操作
     */
    public function _empty(){
        $this->error('操作错误！',U('Index/index'));
    }
}